package server.controlleurs.partie;

import java.rmi.AlreadyBoundException;
import java.rmi.NotBoundException;
import java.rmi.Remote;
import java.rmi.RemoteException;

import rmi.RemoteObserver;
import server.controlleurs.tour.ITourControlleur;
import server.models.equipe.IEquipe;
import server.models.participant.Participant;
import server.models.partie.IPartie;
import server.models.partie.Partie;
import server.models.posteDeTir.IPosteDeTir;
import server.models.posteDeTir.PosteDeTir;
import server.models.tireur.ITireur;

public interface IPartieControlleur extends Remote {
	
	public IPartie getPartie() throws RemoteException;
	public ITourControlleur getTourControlleur() throws RemoteException;
	public void joindreParticipant(Participant participant)  throws RemoteException, AlreadyBoundException, NotBoundException;
	public void selectionnerPosteDeTir(ITireur tireur, IPosteDeTir posteDeTir)  throws RemoteException;
	void ajouterJoueurAEquipe(IEquipe equipe, Participant participant)  throws RemoteException, AlreadyBoundException, NotBoundException;
}
